Skip to content

Conversation

sof202
Copy link
Contributor

@sof202 sof202 commented Jul 9, 2025

This adds the 'where is my understanding' quiz for the 'Introduction to machine learning' python course.

Closes #235

Details

I'm not 100% sure if I've added this in the intended way as I couldn't find any direct guidance anywhere:

  • The 10 questions are all multiple choice
  • I added a section and link to the questions in the 'python' subpage of the 'coding languages' page
  • I added 'machine learning' to the 'coding languages' subpage of the 'where is my understanding quizes' page
  • I implemented the quiz via jupyterquiz, however I didn't run the block in the notebook myself as I didn't see this being necessary (builds just fine). I can run the codeblock if this is required.
  • I tried to make the questions centred around Simon's main talking points (though more can certainly be added if we want questions around the coding aspect of the course)
  • I added the page to _toc.yml

Bugs

Not sure if this is a bug or just my browser caching pages, but the page doesn't always appear in the sidebar for some reason:

From here it does:

image

From here it doesn't:
image

@liamjberrisford
Copy link
Collaborator

@sof202 The website plumbing side of things looks great! It works locally on my machine. Sometimes the cache issues as you mentioned can cause the weird behaviour, as the partial build with jb build . doesnt always refresh the indexing between pages i believe (You can force a complete fresh build with jb clean .). @FinleyGibson Would you also be able to be the reviewer for this PR?

@sof202
Copy link
Contributor Author

sof202 commented Jul 10, 2025

Ah that makes sense. I won't be doing this because a clean build takes ~30 minutes on my machine

Copy link

github-actions bot commented Aug 1, 2025

🚦 Pa11y Accessibility Report

Running Pa11y on 7 URLs:

file:///__w/CfRR_Courses/CfRR_Courses/_build/html/where_is_my_understanding/coding_languages_quiz.html - 0 errors
file:///__w/CfRR_Courses/CfRR_Courses/_build/html/programme_information/introduction_to_machine_learning.html - 0 errors
file:///__w/CfRR_Courses/CfRR_Courses/_build/html/individual_modules/section_landing_pages/introduction_to_machine_learning.html - 0 errors
file:///__w/CfRR_Courses/CfRR_Courses/_build/html/where_is_my_understanding/introduction_to_machine_learning.html - 0 errors
file:///__w/CfRR_Courses/CfRR_Courses/_build/html/programme_information/python.html - 0 errors
file:///__w/CfRR_Courses/CfRR_Courses/_build/html/course_homepages/python.html - 0 errors
file:///__w/CfRR_Courses/CfRR_Courses/_build/html/where_is_my_understanding/python.html - 0 errors

✔ 7/7 URLs passed

⚠️ Any errors likely originate from the source file (e.g., filename.md, filename.ipynb).

@liamjberrisford
Copy link
Collaborator

@sof202 @FinleyGibson The accessibility issue present in this PR is down to the colors that JupyterQuiz uses for multile choice correct answers, and so this question:

    {
        "question": "Broadly, what is machine learning?",
        "type": "multiple_choice",
        "answers": [
            {
                "answer": "Machine learning is the field of study that gives computes the ability to learn without being explicitly programmed",
                "correct": true,
                "feedback": "Correct: You could also have 'The science (and art) of programming computers so they learn from data'"
            },
            {
                "answer": "Machine learning is about writing explicit rules and algorithms to solve specific problems",
                "correct": false,
                "feedback": "Incorrect: Machine learning isn't about pre-written rules, but instead learning from data following general patterns"
            },
            {
                "answer": "The science (and art) of programming computers so they learn from data",
                "correct": true,
                "feedback": "Correct: You could also have 'Machine learning is the field of study that gives computes the ability to learn without being explicitly programmed'"
            },
            {
                "answer": "Machine learning is about storing and retrieving vast amounts of data efficiently, like a database system.",
                "correct": false,
                "feedback": "Incorrect: While ML uses data, it is about finding patterns and making predictions from said data, rather than storing/retrieving it."
            }
        ]
    },

The accessibiliy errors stems from the above question in the .json file located in the quizzes directory. I'm currently initiating a discussion upstream with the JupyterQuiz project to address these accessibility concerns and work toward WCAG 2.2 compliance. In the meantime, the most straightforward workaround might be to modify the question so that only one of the answers is marked as true, as it uses an accessible color scheme in that case. Hopefully that is a workable solution that wont impact the quiz to much?

@sof202
Copy link
Contributor Author

sof202 commented Aug 1, 2025

Yeah that's fine, it was just that machine learning isn't a well defined term (and this was expressed in the course). I can rectify this

@liamjberrisford
Copy link
Collaborator

@sof202 Feel free to include that qualification within the question and have a single answer that composes both of the true answers currently there into a single answer.

@liamjberrisford liamjberrisford merged commit 90aa4db into coding-for-reproducible-research:main Aug 20, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create 'Where is my understanding?' Quiz for the Introduction to Machine Learning Course
3 participants